package com.ruoyi.zhgd.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.math.BigDecimal;

import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 自建-沥青配比信息业务对象 zj_n_asphalt_match
 *
 * @author tll
 * @date 2024-09-26
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class ZjNAsphaltMatchBo extends BaseEntity {

    /**
     * 主键
     */
    @NotBlank(message = "主键不能为空", groups = { EditGroup.class })
    private String id;

    /**
     * 配方名称
     */
    @NotBlank(message = "配方名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String matchName;

    /**
     * 创建者
     */
//    @NotNull(message = "创建者不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long creator;

    /**
     * 创建时间
     */
//    @NotNull(message = "创建时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date createDate;

    /**
     * 更新者
     */
//    @NotNull(message = "更新者不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long updater;

    /**
     * 更新时间
     */
//    @NotNull(message = "更新时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date updateDate;

    /**
     * 备注
     */
//    @NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
    private String remark;

    /**
     * 温度下限
     */
//    @NotNull(message = "温度下限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal asphaltTemperatureMin;

    /**
     * 温度上限
     */
//    @NotNull(message = "温度上限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal asphaltTemperatureMax;

    /**
     * 油石比下限
     */
//    @NotNull(message = "油石比下限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal asphaltAggregateRatioMin;

    /**
     * 油石比上限
     */
//    @NotNull(message = "油石比上限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal asphaltAggregateRatioMax;

    /**
     * 骨料1下限
     */
//    @NotNull(message = "骨料1下限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel1Min;

    /**
     * 骨料1上限
     */
//    @NotNull(message = "骨料1上限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel1Max;

    /**
     * 骨料2下限
     */
//    @NotNull(message = "骨料2下限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel2Min;

    /**
     * 骨料2上限
     */
//    @NotNull(message = "骨料2上限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel2Max;

    /**
     * 骨料3下限
     */
//    @NotNull(message = "骨料3下限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel3Min;

    /**
     * 骨料3上限
     */
//    @NotNull(message = "骨料3上限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel3Max;

    /**
     * 骨料4下限
     */
//    @NotNull(message = "骨料4下限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel4Min;

    /**
     * 骨料4上限
     */
//    @NotNull(message = "骨料4上限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel4Max;

    /**
     * 骨料5下限
     */
//    @NotNull(message = "骨料5下限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel5Min;

    /**
     * 骨料5上限
     */
//    @NotNull(message = "骨料5上限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel5Max;

    /**
     * 骨料6下限
     */
//    @NotNull(message = "骨料6下限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel6Min;

    /**
     * 骨料6上限
     */
//    @NotNull(message = "骨料6上限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gravel6Max;

    /**
     * 粉料1下限
     */
//    @NotNull(message = "粉料1下限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powder1Min;

    /**
     * 粉料1上限
     */
//    @NotNull(message = "粉料1上限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powder1Max;

    /**
     * 粉料2下限
     */
//    @NotNull(message = "粉料2下限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powder2Min;

    /**
     * 粉料2上限
     */
//    @NotNull(message = "粉料2上限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powder2Max;

    /**
     * 粉料3下限
     */
//    @NotNull(message = "粉料3下限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powder3Min;

    /**
     * 粉料3上限
     */
//    @NotNull(message = "粉料3上限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal powder3Max;

    /**
     * 再生料上限
     */
//    @NotNull(message = "再生料上限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal recycledMaterialMin;

    /**
     * 再生料下限
     */
//    @NotNull(message = "再生料下限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal recycledMaterialMax;

    /**
     * 沥青上限
     */
//    @NotNull(message = "沥青上限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal asphaltMin;

    /**
     * 沥青下限
     */
//    @NotNull(message = "沥青下限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal asphaltMax;

    /**
     * 拌合站主键(关联部门)
     */
//    @NotBlank(message = "拌合站主键(关联部门)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String stationCode;


}
